const router = require('koa-router')()
const robotData = require('../data.json')
const bodyparser = require('koa-bodyparser')
/**
 * @name http请求是什么？
 * ajax 发起请求 -> 后端 响应数据
 * 我告诉后端，我想要什么数据？ 参数 （get/post参数）
 * 后端如何给我数据？ 根据前端传递过来的参数 处理数据，返回数据 -> 响应
 *
 * 1. koa中如何获取参数
 * ctx.query get参数
 * ctx.request.body post参数
 *
 * 2. koa如何响应数据
 * ctx.body = {} 响应数据
 */
// 注册一个可以解析post参数的插件

router.get('/', async (ctx, next) => {
  // ctx => req, res
  // req => requset 请求
  // res => response 响应
  ctx.body = `<h1>我是首页</h1>`
})

router.get('/api/get-test', async (ctx, next) => {
  // 获取参数 get参数： ctx.query
  const { page = 1, size = 5 } = ctx.query
  ctx.body = {
    code: 0,
    msg: 'success',
    data: robotData.slice((page - 1) * size, page * size),
  }
})

const userInfo = [
  {
    username: 'admin',
    password: '123',
  },
]

router.post('/api/login', async (ctx, next) => {
  console.log('ctx.request.body:', ctx.request.body)
  const { username, password } = ctx.request.body
  console.log('username:', username)
  console.log('password:', password)
  const flag = userInfo.some(
    (v) => v.username === 'admin' && v.password === '123'
  )
  if (flag) {
    ctx.body = { code: 0, msg: 'success', data: { token: '123' } }
  } else {
    ctx.body = { code: -1, msg: 'fail' }
  }
})

module.exports = router
